package com.sdehua.wear.service;

import com.sdehua.wear.entity.Collect;
import com.sdehua.wear.entity.CollectVO;

import java.util.List;

/**
 * (Collect)表服务接口
 *
 * @author makejava
 * @since 2021-12-31 15:28:27
 */
public interface CollectService {

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    Collect queryById(Integer id);

    /**
     * @MethodName deleteFavorite
     * @Author coffee
     * @Description 删除
     * @Date 15:54 2022/1/1
     * @Param [userId, goodsId]
     * @return boolean
     **/
    boolean deleteFavorite(String userId,String goodsId);
    
    /**
     * @MethodName queryOne 
     * @Author coffee
     * @Description 查
     * @Date 15:41 2022/1/1 
     * @Param [userId, goodsId]      
     * @return com.sdehua.wear.entity.Collect
     **/
    Collect queryOne(String userId,String goodsId);

    /**
     * 查询多条数据
     *
     * @param offset 查询起始位置
     * @param limit 查询条数
     * @return 对象列表
     */
    List<Collect> queryAllByLimit(int offset, int limit);

    /**
     * 新增数据
     *
     * @param collect 实例对象
     * @return 实例对象
     */
    Collect insert(Collect collect);

    /**
     * 修改数据
     *
     * @param collect 实例对象
     * @return 实例对象
     */
    Collect update(Collect collect);

    /**
     * 通过主键删除数据
     *
     * @param id 主键
     * @return 是否成功
     */
    boolean deleteById(Integer id);

    Collect setFavorite(String userId, String goodsId);

    List<CollectVO> queryAll(String userId);
}